{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Illustration of Various Kernels\n",
    "---------------------------------\n",
    "\n",
    "This function wll illustrate how to implement various kernels in TensorFlow.\n",
    "\n",
    "Linear Kernel:\n",
    "K(x1, x2) = t(x1) * x2\n",
    "\n",
    "Gaussian Kernel (RBF):\n",
    "K(x1, x2) = exp(-gamma * abs(x1 - x2)^2)\n",
    "\n",
    "We start by loading the necessary libraries"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "import tensorflow as tf\n",
    "from sklearn import datasets\n",
    "from tensorflow.python.framework import ops\n",
    "ops.reset_default_graph()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Start a computational graph session:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "sess = tf.Session()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "For this example, we will generate fake non-linear data.  The data we will generate is concentric ring data."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "# Generate non-lnear data\n",
    "(x_vals, y_vals) = datasets.make_circles(n_samples=350, factor=.5, noise=.1)\n",
    "y_vals = np.array([1 if y==1 else -1 for y in y_vals])\n",
    "class1_x = [x[0] for i,x in enumerate(x_vals) if y_vals[i]==1]\n",
    "class1_y = [x[1] for i,x in enumerate(x_vals) if y_vals[i]==1]\n",
    "class2_x = [x[0] for i,x in enumerate(x_vals) if y_vals[i]==-1]\n",
    "class2_y = [x[1] for i,x in enumerate(x_vals) if y_vals[i]==-1]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We declare the batch size (large for SVMs), create the placeholders, and declare the $b$ variable for the SVM model."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "# Declare batch size\n",
    "batch_size = 350\n",
    "\n",
    "# Initialize placeholders\n",
    "x_data = tf.placeholder(shape=[None, 2], dtype=tf.float32)\n",
    "y_target = tf.placeholder(shape=[None, 1], dtype=tf.float32)\n",
    "prediction_grid = tf.placeholder(shape=[None, 2], dtype=tf.float32)\n",
    "\n",
    "# Create variables for svm\n",
    "b = tf.Variable(tf.random_normal(shape=[1,batch_size]))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Here we will apply the kernel.  Note that the `Linear Kernel` is commented out.  If you choose to use the linear kernel, then uncomment the linear `my_kernel` variable, and comment out the five RBF kernel lines."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "# Apply kernel\n",
    "# Linear Kernel\n",
    "# my_kernel = tf.matmul(x_data, tf.transpose(x_data))\n",
    "\n",
    "# Gaussian (RBF) kernel\n",
    "gamma = tf.constant(-50.0)\n",
    "dist = tf.reduce_sum(tf.square(x_data), 1)\n",
    "dist = tf.reshape(dist, [-1,1])\n",
    "sq_dists = tf.add(tf.subtract(dist, tf.multiply(2., tf.matmul(x_data, tf.transpose(x_data)))), tf.transpose(dist))\n",
    "my_kernel = tf.exp(tf.multiply(gamma, tf.abs(sq_dists)))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Next we compute the SVM model and create a loss function."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "# Compute SVM Model\n",
    "first_term = tf.reduce_sum(b)\n",
    "b_vec_cross = tf.matmul(tf.transpose(b), b)\n",
    "y_target_cross = tf.matmul(y_target, tf.transpose(y_target))\n",
    "second_term = tf.reduce_sum(tf.multiply(my_kernel, tf.multiply(b_vec_cross, y_target_cross)))\n",
    "loss = tf.negative(tf.subtract(first_term, second_term))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Just like we created the kernel for the training points, we need to create the kernel for the test/prediction points.\n",
    "\n",
    "Again, comment/uncomment the appropriate lines for using the linear or RBF kernel."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "# Create Prediction Kernel\n",
    "# Linear prediction kernel\n",
    "# my_kernel = tf.matmul(x_data, tf.transpose(prediction_grid))\n",
    "\n",
    "# Gaussian (RBF) prediction kernel\n",
    "rA = tf.reshape(tf.reduce_sum(tf.square(x_data), 1),[-1,1])\n",
    "rB = tf.reshape(tf.reduce_sum(tf.square(prediction_grid), 1),[-1,1])\n",
    "pred_sq_dist = tf.add(tf.subtract(rA, tf.multiply(2., tf.matmul(x_data, tf.transpose(prediction_grid)))), tf.transpose(rB))\n",
    "pred_kernel = tf.exp(tf.multiply(gamma, tf.abs(pred_sq_dist)))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "In order to use the kernel to classify points, we create a prediction operation.  This prediction operation will be the sign ( positive or negative ) of the model outputs.  The accuracy can then be computed if we know the actual target labels."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "prediction_output = tf.matmul(tf.multiply(tf.transpose(y_target),b), pred_kernel)\n",
    "prediction = tf.sign(prediction_output-tf.reduce_mean(prediction_output))\n",
    "accuracy = tf.reduce_mean(tf.cast(tf.equal(tf.squeeze(prediction), tf.squeeze(y_target)), tf.float32))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We now declare the optimizer and variable initialization operations."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "# Declare optimizer\n",
    "my_opt = tf.train.GradientDescentOptimizer(0.002)\n",
    "train_step = my_opt.minimize(loss)\n",
    "\n",
    "# Initialize variables\n",
    "init = tf.global_variables_initializer()\n",
    "sess.run(init)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We start the training loop for the SVM.  We will randomly choose a batch of points and run the train step.  Then we calculate the loss and accuracy."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Step #250\n",
      "Loss = 37.2013\n",
      "Step #500\n",
      "Loss = -6.09064\n",
      "Step #750\n",
      "Loss = -10.5297\n",
      "Step #1000\n",
      "Loss = -11.2134\n"
     ]
    }
   ],
   "source": [
    "# Training loop\n",
    "loss_vec = []\n",
    "batch_accuracy = []\n",
    "for i in range(1000):\n",
    "    rand_index = np.random.choice(len(x_vals), size=batch_size)\n",
    "    rand_x = x_vals[rand_index]\n",
    "    rand_y = np.transpose([y_vals[rand_index]])\n",
    "    sess.run(train_step, feed_dict={x_data: rand_x, y_target: rand_y})\n",
    "    \n",
    "    temp_loss = sess.run(loss, feed_dict={x_data: rand_x, y_target: rand_y})\n",
    "    loss_vec.append(temp_loss)\n",
    "    \n",
    "    acc_temp = sess.run(accuracy, feed_dict={x_data: rand_x,\n",
    "                                             y_target: rand_y,\n",
    "                                             prediction_grid:rand_x})\n",
    "    batch_accuracy.append(acc_temp)\n",
    "    \n",
    "    if (i+1)%250==0:\n",
    "        print('Step #' + str(i+1))\n",
    "        print('Loss = ' + str(temp_loss))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "To plot a pretty picture of the regions we fit, we create a fine mesh to run through our model and get the predictions.  (This is very similar to the SVM plotting code from sci-kit learn)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "# Create a mesh to plot points in\n",
    "x_min, x_max = x_vals[:, 0].min() - 1, x_vals[:, 0].max() + 1\n",
    "y_min, y_max = x_vals[:, 1].min() - 1, x_vals[:, 1].max() + 1\n",
    "xx, yy = np.meshgrid(np.arange(x_min, x_max, 0.02),\n",
    "                     np.arange(y_min, y_max, 0.02))\n",
    "grid_points = np.c_[xx.ravel(), yy.ravel()]\n",
    "[grid_predictions] = sess.run(prediction, feed_dict={x_data: rand_x,\n",
    "                                                   y_target: rand_y,\n",
    "                                                   prediction_grid: grid_points})\n",
    "grid_predictions = grid_predictions.reshape(xx.shape)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Plot the results"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7fd7ac14bda0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\niHDnnXfu6S5UGWrSd3H//ffrO++84x5/8803ev3116d07TPPPKOdO3fWRx99VE866SQdNmyYnn/+\n+frTTz/F1DvhhBP0pJNOco9zc3O1a9euSsQV7JZfeeWVunTpUlVVnTJlil5zzTV63XXXufUAHTVq\nlJ511ln6q1/9KqZ80KBBMcd5eXk6cOBAffTRR/WFF16IOQdoSUmJLly4MKZs6dKlev/998eUnXnm\nmQroQQcdFNdGuq/zzjtP+/Tpo3Xq1IkpP//88wPrH3vssUnb3H///RXQE088UX/5y1+65V26dFFA\nW7ZsqV27dtXDDz9c33vvPQV02LBhce307dtXAf3ggw/csqiHJe7Vv39/zc7O1ueee04BbdOmjQLa\nokULBfT00093/l0rZ0yvrIYy/TLB2EVNGiQrSk36LgA98sgj3eNbbrnFHcRXrVqlf/3rXxNeG/R6\n55139PXXX9f//ve/MfUmTZqkb775Zlz9YcOG6bvvvquAPvHEE/rzzz+Htj1kyJC0B+oDDjggruzp\np5+OK/vqq69C28jLy0t6n+zsbH3yySdDzz/44IPasmXLlPoC6E033RTaVrdu3VL+/DfccIMCeu+9\n97r9zM/PD6xbUFDgvm/evLkrEIC2b99eR40ape3atdN9991Xf/zxx5h/Q+f9ySefbIJR25k2bdqe\n7kKVoSZ9FxB5knVwBilV1RdffFEB3b59e+i1zisnJ8d9/69//ct9/+GHH4YOZP4nbUA7deqkn3zy\nSeg1YU+9yV6dO3eOG9yd9/vvv782b95czzrrrHK17e37xx9/7B47T9zO65lnngm8btSoUe77zz//\nXL/88ksFdMyYMXF1jzvuOH3rrbd0+fLlce07L8e6cF4jR47Url276oEHHqh9+vRRQK+99to4YZg7\nd66qqr7//vvu55k/f74r4L169dL58+croAcffLAWFRW5bUybNk2//vprBdzvUStpHN7Ts6SMcpCf\nn7+nu1BlqKrfxfvvv8+PPwbO30hInTqReSivvvoqxcXxGdAXLFgQV+ZnwIABNG8eyX7y5ptvuuXH\nHntsTD3nXgAlJSVx7Sxbtoz//Oc/ofeJ6FQ8Tz31VGBMoF+/fgA8++yzblndunWpV6+ee9ytWzd6\n9+7NxIkTAbjvvvvcczfccENoX7xMmzaNjz/+mLy8PLfs2Wef5X//+x9nn302AI0aNQq8Njs72/17\n6KGHcsghh/DBBx8ExjM++OADTj31VDp06MBxxx3nXuutm5UVO8Q2btyYfv368fXXX7vxoP322w+A\nyZMn07t3JCFGr169ADjhhBPc63r06BETB2nbNrJzccOGDalbty633347AE2bNuWAAw5g3rx5vPDC\nC8m/sDQwwTCMDHDSSScxbNiwhHU2bNjAjBkzYsqcQefCCy9k8eLFbnlBQQEA8+fPd8u2bdvG1KlT\nAcjJyXHL8/Ly3MEybFCHWMEI48EHH4w57tixY8zxvvvGJuG98cYbueCCC3jjjTcYNWoUAC+/HEmM\n265dO8aPH0///v3d+t27d6du3V35FkUkZpDNz893B/dbb72VZ57ZlQxiwIABPP/88+7xK6+8wtKl\nS8nPz6d169YxgrH33ntz5JFH8uqrr/Luu++GCsZ5553HiBEj+Prrr92yY489lpycHH77298CcPPN\nNwMwd+5ct07Dhg1p2TKy5th7X7/gFhUVuQH+3//+9zz++ONceOGFvPHGG5x00km8+uqrfP55fNb5\nxo0bx5U5n8H5bVx00UVARDAgMlFg7739yY8rSGWZKpl+YS4powoxY8aMhOcBHThwYMI6t99+uwJu\nW4Ceeuqp7vsTTjhBAS0rK9M//OEPCugjjzziXv/II4+4LqtGjRq5LonBgwdr27ZtFdCLLrqo0lxK\nPXr00AceeCCmzBuAHjlyZMznW758uUIkqO30xfv9AHrppZdqgwYN3GDtOeeco2effbZ7/quvvtJV\nq1bpm2++6V47YsQIBXTy5Mmqqjpy5EgFdPHixYH3B3TmzJkx56ZPn64QH1NJxPbt2/XVV1/VHTt2\n6NixY2POXXPNNdqnTx8dP368FhQU6NChQ932OnXqpID++9//1vXr1+vhhx+e9F5eAD3ttNNijvv0\n6aOqqu+9955OmjRJVVU3b96sgBYWFsZdr5U0Du/pdRiGUe1Yv349Rx99dMKnd4g8LSfCefo7+uij\nWbs2Mpu8Tp06rnto/frITrKbNm1i1qxZNGzYkM8//xxVZeXKle41EHnC/fnnn4HIE67Tty1btoTe\nP1n//TRp0sR9evW38cYbb7juHgfHgnGsJq/ryaFjx45s3bqV4cOHc9tttyEiPPTQQ3z22Wf8+OOP\n5OXl0aZNG9q0aeNeM2TIEG688Ub3+7v88stZsWIFHTp0iGnb+6Tvt6YOPPBAbr75Ztq1a8fQoUNT\n+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\nVRUR4Z577uGOO+5Iuz+nnXYab7/9tu2tbRhGrUFEUNVKeVrOqIWhqqUich3wHpF4yUhVnS8idwOf\nqaxlg9wAAA25SURBVOp/getF5CygGCgELk3WbqKgdyLMwjAMwyg/Gd9ASVXfAbr7yu70vB8ODE+n\nzfr165erL0F7gRuGYRipkVGXVGXiuKS++eYbunbtWq7NjzZv3sy6devo2rVrBnpoGIZR9ahMl1S1\nEwzDMAwjdSpTMCy5kmEYhpESJhiGYRhGSmQ86G0YRs2mU6dOLF++fE93o9bTsWNHli1bltF7WAzD\nMIwKEfWR7+lu1HrC/h0shmEYhmHsdkwwDMMwjJQwwTAMwzBSwgTDMAzDSAkTDMMwDCMlTDAMw6jx\n5Ofn07x5c4qLi/d0V6o1JhiGYdRoli9fzowZM8jKymLixIm77b6JdgatrphgGIZRoxkzZgz9+vXj\n0ksvZdSoUW75jh07uPHGG+nUqRPNmjXj2GOPpaioCIAZM2Zw1FFH0axZMzp27MiYMWMAOP7443nx\nxRfdNkaPHs0xxxzjHmdlZfH000+z3377sd9++wHwf//3f3To0IEmTZpw2GGHMWPGDLd+WVkZ9913\nH127dqVx48YcdthhrFq1iuuuu46bbrop5nOcddZZPP7445X+/aSFqlaLV6SrhmFUNar6/82uXbvq\nM888o1988YXm5OTounXrVFX197//vR5//PG6evVqLSsr05kzZ+rOnTv1hx9+0EaNGum4ceO0pKRE\nCwsLdc6cOaqqmp+fryNHjnTbHjVqlB5zzDHusYjogAEDdOPGjbpjxw5VVR07dqxu2LBBS0tL9eGH\nH9ZWrVppUVGRqqo++OCD2rt3b120aJGqqs6dO1cLCwt11qxZ2rZtW7fdgoICbdCggf7000+hnzPs\n3yFaXjnjcGU1lOlXVf9RGkZtJdn/TaBSXuXho48+0rp162phYaGqqu6///766KOPallZmebl5em8\nefPirrn//vv1V7/6VWB7qQjG9OnTE/apWbNmOnfuXFVV7d69u06aNCmwXs+ePXXKlCmqqvrkk0/q\n6aefnrDd3SEY5pIyDCOjVNZgVR7GjBnDgAED3M3TBg0axOjRoykoKGDHjh106dIl7poVK1aw7777\nlvvztmvXLuZ4xIgR9OzZk2bNmtGsWTM2b95MQUGBe6+gPgBcfPHFvPLKKwC88sorDB48uNx9qiws\n+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\nSUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7fd7ac06bda0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZgAAAEZCAYAAACq1zMoAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3Xl8VPW9//HXJztrQBGILKIFEVTEpYqVKm7XcrWIUv2J\nG3oteut1q71VqyJotRdtkbpV61K1qNQVFbWKCnEXUcSNLSrIHmQJSwghy+f3x5wZZpJJCJDJhJn3\n8/GYB+d8zzLfORnyzvec7/kec3dEREQaW0ayKyAiIqlJASMiIgmhgBERkYRQwIiISEIoYEREJCEU\nMCIikhAKGBGpk5ndb2Y3JLsesmtSwEjSmdkCMzsu2fVIBDPraWYTzWylmZWY2Twzu8vM9kx23Woy\nsxFm9l50mbv/xt1vS1adZNemgBFpBGaWGaesJzAdWAL0d/d2wFHAd8DAZNcv3mqA7ryWRqOAkWbN\nzEaaWZGZrTKzF82sIGrZeDMrDloGs8ysb1D+n2b2jZmtN7PFZnZ1HfseYWbvm9ndwT5mR7ekzKyt\nmT1sZsuC/fzRzKzGtnea2WpgdJy3GA287+6/d/dlAO6+yt3vdvdnot7nFDP73MzWBvs8MGrZAjP7\nnZl9ESyfaGY527HtNWb2BbDRzDLM7Foz+zY4Nl+b2dBg3f2A+4EjzWyDma0Jyh81s1sa+POoNrNL\nzGy+ma02s3u39fOVFOfueumV1BewADguTvlxwI/AQUA2cDfwTrDsP4AZQJtgvjfQKZheBvwsmM4n\n1HqI974jgArgCiATOBMoAdoFy18E/gbkAR2Aj4GRNba9lNAfarlx9r8cOH8bn/0QoBg4jFAL4rzg\neGRHHZuPgU5AO2A2cPF2bDsT2DNcP2BY1HE6A9gYNT8CeLdG/R4FbtnWzyNYXg28DLQBugErgf9I\n9vdLr+S91IKR5uxs4BF3/8LdK4A/AAPMrDuhX+5tgL5mZu4+z92Lg+22APubWRt3X+fus+p5j2IP\ntSiqPNSqmAecbGYdgV8Av3X3ze6+CvgrMDxq26Xu/jd3r3b38jj77gCsCM+Y2f8ELY0NZvb3oPjX\nwAPu/qmHTADKgQFR+7nL3YvdvQSYDPTfzm2Xhevn7s+Hj5O7PwsUAYfXc3yixft5HBn8PML+z903\nuPtiYFpUXSUNKWCkOdsT+CE84+6lwBqgi7tPA+4F7gNWmNkDZtY6WHUYcDLwg5lNM7MB1G1pjfkf\ngvfdi9Bf6cvNbI2ZrQUeIBQaYYu3Uf/VQOQUkrvf5+7tCQVVdlC8F/C74D3C79M1qENYcdT0JqD1\ndmy7JLpCZnZ+1Cm1tcD+NT5TfeL9PFYDXRpQV0lDChhpzpYR+iUKgJm1AnYnCAV3v9fdDyP0S7I3\n8Pug/DN3HwrsAbwEPEPdutSY7x6872JgM7C7u+/m7u3dvZ2794tad1sXxN8GTt/GOouB24L3CL9P\na3d/ehvbNXTbSB2DlsaDwKXBuu2BbwidXmvI56nr57Gkzi0krSlgpLnIMbPcqFcm8BRwoZn1M7Nc\n4E/AR+6+yMwOM7PDzSwLKCMUBlVmlm1mZ5tZW3evAjYAlfW8b0czu9zMsszsDGA/4DV3XwFMAcab\nWRsL2cfMjt6OzzQG+LmZ/cWCbslm1gHoE7XOQ8B/m9nhwfJWQSeFVg3Y//Zu24rQdZJVwQX/C4ED\nopYXA13NLDvu1vF/Hh8Hp8NEalHASHPxKqFTKmXBv6PdfSowCniBUKtlb7ZeA2lL6BfsGkIXs1cB\nfwmWnQcsMLMS4GLgnHredzrQK9j+j8Awd18bLDsfyCF0YX0N8CzQuaEfyN2LCF0P6QZ8YWbrgPeC\nzzIqWOczYCRwb9Bzaz6hi+2R3dSz/+3a1t3nAOMIdRpYQajl937UKlMJtWhWmNnKOO8X7+dxVj11\nVZfnNGfuyf0OmNlCYB2hv6wq3P1wM2sPPE2oOb4QONPd1wXr3w0MBkqBC7ZxAVekTmY2ArjI3ben\nVSIiDdQcWjDVwCB3P9jdw71ZrgPecvfehP6q+gOAmQ0GfuLuvYBLCF10FRGRZqg5BIxRux6nAo8H\n048H8+HyfwK4+3Qg38w6NUUlRURk+zSHgHHgDTObYWa/Dso6RfXVXwF0DMq7ENs1dCm1ewGJNIi7\nP67TYyKJk5XsChC643qFme0BTDGzedR9cdDilOlCoohIM5T0gAlaKLj7j2b2IqG7iovNrJO7F5tZ\nZ0JDTkCov323qM27EuqbH8PMFDoiIjvA3eP9Ib9DknqKzMxahu++Dvru/wfwFaHxjC4IVruA0M1y\nBOXnB+sPAEqihgeJkewxeJrLa/To0UmvQ3N56VjoWOhY1P9qbMluwXQCJgUtjizgSXefYmafAs+Y\n2X8BiwgNyoe7vxbcSPYtoW7KFyar4iIiUr+kBoy7LyDOYHjuvgY4oY5tLkt0vUREZOc1h15kkkCD\nBg1KdhWaDR2LrXQsttKxSJyk38mfCKHR21Pvc4mIJJKZ4alykV9ERFKXAkZERBJCASMiIgmhgBER\nkYRQwIiISEIoYEREJCEUMCIikhAKGBERSQgFjIiIJIQCRkREEkIBIyIiCaGAERGRhFDAiIhIQihg\nREQkIRQwIiKSEAoYERFJCAWMiIgkhAJGREQSQgEjIiIJoYAREZGEUMCIiEhCKGBERCQhFDAiIpIQ\nChgREUkIBYyIiCSEAkZERBKiWQSMmWWY2UwzezmY72FmH5vZPDObaGZZQXmOmf3LzIrM7CMz657c\nmouISF2aRcAAVwKzo+ZvB8a5e2+gBLgoKL8IWOPuvYC/Anc0aS1FRKTBkh4wZtYV+E/g4aji44Dn\ng+nHgaHB9KnBPMBzwPFNUUcREdl+SQ8YYDzwe8ABzGx3YK27VwfLlwBdgukuwGIAd68CSsxst6at\nroiINERSA8bMTgaK3X0WYOHiqOkwj1oWs4uoZbX88Y9/pGfPno1RVRER2U5ZSX7/o4AhZvafQAug\nDaFrK/lmlhG0YroCy4L1lwDdgGVmlgm0dfe18XY8ZswYHnvsMX744QcKCwsZNGhQoj+LiMgupbCw\nkMLCwoTt39zrbAA0KTM7Bviduw8xs6eBF9z9aTO7H/jC3R8ws0uBA9z9UjM7Cxjq7mfF2Ze7O8cd\ndxzTpk2juXxGEZHmzMxw95pninZYc7gGE891wNVmNh/YDXgkKH8E6GBmRcBVwXp1yshorh9PRCT1\nJfsUWYS7vwO8E0wvAI6Is045cGZD92nWaEEsIiLbSX/ii4hIQqR0wKgFIyKSPAoYERFJCAWMiIgk\nhAJGREQSQgEjIiIJoYAREZGEUMCIiEhCpHTAiIhI8qR0wGioGBGR5Enp38A6RSYikjwKGBERSYiU\nDhgREUmelA6YcAvm008/TXJNRETST0oHTPgi/09/+lOKioqSXBsRkfSSsgGzePFiPvroo8j8uHHj\nklgbEZH0k7IBc/vtt7N8+fLIfFZWs3m2mohIWkjZgOnQoUPMfGZmZpJqIiKSnlI2YDZt2hQzr4AR\nEWlaKRswGzZsiJlXwIiINK2UDZivv/46Zl4BIyLStFI2YN5///2YeV3kFxFpWikbMDWpBSMi0rRS\nPmBOOeUUQCMri4g0tZT/rRs+NaZTZCIiTSvlAyY7OxvQKTIRkaaW8gETbrk89NBDDBw4kFtvvTXJ\nNRIRSQ/m7smuQ6Mzs8iHOu+885gwYULM8lT8zCIiO8vMcPdGe5BW2rRgoilgREQSL6kBY2a5Zjbd\nzD43s6/MbHRQ3sPMPjazeWY20cyygvIcM/uXmRWZ2Udm1r2ufU+ePDn8HrWWVVdXJ+YDiYhIRFID\nxt3LgWPd/WCgPzDYzI4AbgfGuXtvoAS4KNjkImCNu/cC/grcUde+w92T47VgqqqqGvFTiIhIPEk/\nRebu4VEpc4EswIFjgeeD8seBocH0qcE8wHPA8dvaf8uWLTnjjDNiytSCERFJvKQHjJllmNnnwArg\nTeA7oMTdwymwBOgSTHcBFgO4exVQYma71bf/qqoqunfvXquspq+++monPoWIiNSU9LsPgyA52Mza\nApOAPvFWC/6teUHFopbFGDNmDABffPEFBQUFMcvWr1/PqlWr2GuvvcJ1oF+/flRUVOiGTBFJG4WF\nhRQWFiZs/82qm7KZ3QRsAq4BOrt7tZkNAEa7+2Azez2Ynm5mmcByd+8YZz/u7vzwww907tyZ0aNH\nc/vtt0eW/+1vf6OwsJCnn34aCLVosrKyKC8vJycnpyk+qohIs5NS3ZTNrIOZ5QfTLYATgNnANCB8\n4WQE8FIw/XIwT7B8an3732uvvcjNza01DtmmTZsoLS2lR48ePPDAA5FrMrr4LyLSeJJ9DaYAmGZm\ns4DpwBvu/hpwHXC1mc0HdgMeCdZ/BOhgZkXAVcF621RzmJjNmzezadMmfvjhB6ZMmRIJFgWMiEjj\nSeoFB3f/CjgkTvkC4Ig45eXAmdv7PjVbMJs3b6asrAyA8vJyBYyISAIkuwXTJOIFzKZNod7RChgR\nkcRI24CJbsHoGoyISONLi4CJdw0mHDBbtmyJBEtlZWWT101EJFWlRcCEWzBnn302UPcpsmXLltXa\ndsmSJWzcuLGJaioikjrSKmBGjRpF796967zIf9hhh9Xa9vrrr2fSpElNV1kRkRSRVgGTk5NDZmZm\nrYA599xz69x28+bNVFRUNEk9RURSSVoFTHZ2diRgwjZs2MDUqVvv19yyZUvMttHXaEREpOHSImDC\nF/mjWzBhq1atilm3vLw8Zl4BIyKyY9IiYGq2YMKnx+JRwIiINI60DJjoFkxNChgRkcaRVgET7xRZ\nTQoYEZHGkVYB01gtmFNPPZUXXnih8SsqIpJC0iJgws+8ycjIICMjY6cD5uWXX9YTMEVEtiEtAqak\npCQynZGR0SgX+Vu3bt14FRQRSUFp8Xzg7777LjK9rceD6hqMiEjjSIsWzM9+9jMGDhwYUzZmzJi4\n65aXl7N27VqmT58ObA2Yrl27RsYvg9CjRUVEpG5pETAXXngh7733XkxZixYt4q5bXl7O9ddfz4AB\nA4CtAbN06VLmzp2b8LqKiKSKtAiYeOoLmGjRp8i+//77hNdLRCRVpF3AnH/++QC0bNky7vKysjKy\ns7Mj81u2bIkMdrl48eLIw8nCPdNERCS+tAuYiy66CKi7BbNhwwZycnKAUIhs2bKFv/zlL0DoeTHh\ngAn/KyIi8aVFL7Jo4dZJXQHz2GOP8cknnwCwfv36mJaKAkZEpOHSrgUTbp3UFTDhcAFo165dzLKV\nK1dGrseo67KISP3SLmC21YKpT2lpqVowIiINlLYBE+8i/2mnnVbvths3blTAiIg0UIMCxsx+Yma5\nwfQgM7vCzNpta7vmqL5TZBdccEG92y5dujQyzIwCRkSkfg1twTwPVJlZT+BBoBvwVMJqlUD1nSIb\nMmRIvduuWbOGyy+/HFDAiIhsS0MDptrdK4HTgHvc/fdAQeKqlTh1tWBOOeWUBm0ffsSyLvKLiNSv\noQFTYWbDgRHAK0FZdj3rN1vxWjAnn3wykydPbtD24Z5lH374Ieeee27jV1BEJEU0NGAuBI4EbnP3\nBWa2N/DEzr65mXU1s6lmNtvMvjKzK4Ly9mY2xczmmdkbZpYftc3dZlZkZrPMrP/2vme8FkxmZmaD\nt+/YsSMQGpX5ySef3N63FxFJGw0KGHef7e5XuPtEM2sPtHH3sY3w/pXA1e7el1CA/Y+Z7QdcB7zl\n7r2BqcAfAMxsMPATd+8FXAI8sL1vGA6T3NxcPvvsM2DrEy+35cYbb9S1FxGRBmpoL7JCM2trZrsB\nM4GHzOzOnX1zd1/h7rOC6Y3AHKArcCrweLDa48E8wb//DNafDuSbWaftec8WLVpwyy23YGYccsgh\nQMNbMLm5uTFD9ouISN0aeoos393XA6cD/3T3I4ATGrMiZtYD6A98DHRy92IIhRDQMVitC7A4arOl\nQdn2vA+jRo2KzN9www389re/bdC2ubm59T4NM+yMM86gtLR0e6olIpJyGjoWWZaZFQBnAjc0diXM\nrDXwHHClu280s7qGKo73lK+460Y/UGzQoEEMGjQo7g5vvfXWBtczJyenQQHz3HPPMWrUKPr169fg\nfYuINLXCwsJtPuV3ZzQ0YG4B3gA+cPcZZrYPUNQYFTCzLELhMsHdXwqKi82sk7sXm1lnYGVQvoTQ\nPThhXYFl8fZb1xMrt9ejjz7KPffcw8yZM+O2YKqrqxk+fDiPPfZYTMcBDecvIs1dzT++b7755kbd\nf0Mv8j/r7v3c/TfB/PfuPqyR6vAPYLa73xVV9jJwQTB9AfBSVPn5AGY2ACgJn0pLlLPPPpvCwkI+\n++yzuAFz6aWX8swzz/Ddd9/FlCtgRCTdNfQif1czm2RmK82s2MyeN7OuO/vmZnYUcA5wnJl9bmYz\nzewXwO3AiWY2DzgeGAvg7q8BC8zsW+DvwKU7W4f6nHbaaeTk5NCmTRsOOeQQcnJy+Pjjj2PWeffd\ndwEadOpMRCSdNPQU2aOEhoY5I5g/Nyg7cWfe3N0/AOrqwhW3E4G7X7Yz77k9arZC4oVIuFdZWVkZ\nffr0iQSOWjAiku4a2otsD3d/1N0rg9djwB4JrFezUDMkli5dWmudjRs3AlBSUsLcuXN58803424r\nIpJuGhowq8zsXDPLDF7nAqsTWbHmoGZIXHZZ7cbTunXrACgqCvV5WLYsbp8DEZG009CA+S9CXZRX\nAMuBXxEaPial1QyY3XffvdZd/5WVlQDMmzcPCD1mGTTasohIQ3uRLXL3Ie6+h7t3dPehhG66TGnx\nTnPV9STMcMulpKQEiD/a8pYtWxqxdiIizdvOPNHy6karRTNy2GGHRaa3J2BWrw6dMZw1axawtWUT\n9uKLL5Kbm9tY1RQRafZ2JmDi3VW/y3v99dcj09sTMGvWrCE3N5f33nsPgIEDB7JixYrI8pr3yUSb\nMmVKrUASEdnV7UzApGQ3qehrLPECpmXLlpHpL7/8MjK9evVqzGIzN/xwsrr2FXbSSSfx1ltv7VB9\nRUSaq3oDxsw2mNn6OK8NwJ5NVMcmFT2ycrxQCD9wDLY+GwZCAbP//vvHrJuVtfU2I3VbFpF0U++N\nlu7epqkq0lxEB8zJJ59ca3l0wHTo0CFm2fDhw1mzZg0LFiwAYgNmW73KarZ+RER2dQ29kz9thAPm\ntddeY/DgwbWWt2/fvta6Ya1bt465kB/datlWC0YBIyKpRgFTQzg0olsq0bp0qfvxM7m5uTEBU1lZ\nyfr168nOzt5mwDT0qZoiIrsK/VarYVsBc8stt3D22WfHXVYzYPr27Ut+fj5Dhw5VC0ZE0o4Cpobw\nL/q2bdvGXd6yZUv22WefuMtqBkzYt99+GwmYjh07ctxxx3HJJZfEfV8RkVShU2Q1bCtgAI455hgm\nT55cq7yugMnMzIwEzI8//si0adNqjVmmgBGRVKMWTByzZ8+mTZu6O9CdcMIJkTv2o9UVMBkZGbV6\nke2xR8oPRi0iaU4tmDj69OmzQ9vl5OSQk5NTqzwzM7NWwLRt25aRI0dGujqrBSMiqUYB04jqa8F8\n++23MWWVlZU8/PDDkZEBNPqyiKQanSJrRPUFzJNPPhlTFh5ZOfxvvNGXRUR2ZQqYnXTiiSdy1FFH\nAXUHTPSYZWGFhYXA1lGXFTAikmoUMDtpypQp3HTTTUDtgNme4fkVMCKSahQwjSB8oT43NzfmIn9d\nQ/vHo2swIpJqFDCN4KCDDgJqj0WWnZ1d5zbRw/6DWjAiknoUMI0gfCNlfn4+Rx55ZKS8vvHFLr74\n4pj5hgRMaWkp9913345XVESkCSlgGtkpp5wSuWu/vntbOnXqFDPfkICZMmUKl1122c5VUESkiShg\nEigjI6PO6zA1nyVTVVWFu7N48WLKy8vZsmULn3/+eUxIbdq0KaH1FRFpTAqYBDIzHn/88bjLdt99\n95j56upqjj/+eLp3705eXh5HH300CxcuBELdnM1MASMiuxQFTALFuwbzy1/+EqgdMFVVVUybNi0y\nP3369MiptnB5aWkpEAqud999NyF1FhFpLAqYBDKzyJ36EAqIQw89FIgfMDWfkDls2DAAFi9eHNk+\nbN68eQmps4hIY0l6wJjZI2ZWbGZfRpW1N7MpZjbPzN4ws/yoZXebWZGZzTKz/smpdcNkZGRQXl4e\nmW/ZsmWkVVMzYBYuXFjnhf5wSEWfItvWA8xERJIt6QEDPAqcVKPsOuAtd+8NTAX+AGBmg4GfuHsv\n4BLggaas6PbKyMiIacGEy6B2wLz66qt17ueee+4BoKysLFKmGzNFpLlLesC4+/vA2hrFpwLhq+OP\nB/Ph8n8G200H8s2sE83Qvvvuy8CBA+sMmJo3YW7cuHGb+4xeRy0YEWnumutw/R3dvRjA3VeYWceg\nvAuwOGq9pUFZcRPXb5vmzJmDmfHCCy/ElNd182X09ZW6RAeM7vwXkeauuQZMXeLduRj3T/kxY8ZE\npgcNGsSgQYMSU6M6hIPk9NNPZ9asWYwdOzamHGD16tXsvvvu5OXlsWTJkm3uMzpgdIpMRHZWYWFh\nZGT3RGiuAVNsZp3cvdjMOgMrg/IlQLeo9boCy2ptTWzAJJOZcdBBBzFx4kQgNmDy8vIA2Lx5c6Rs\n5MiRPPTQQ3H3tWHDhsi0TpGJyM6q+cf3zTff3Kj7T/o1mIAR2zp5GbggmL4AeCmq/HwAMxsAlIRP\npe0qogMm3nD+Q4YMqXPbNWvWRKZrtmCKi3epwyAiaSDpAWNmTwEfAvua2SIzuxAYC5xoZvOA44N5\n3P01YIGZfQv8Hbg0SdXeYdEBU/O+FyBmuP9o+++/P4sWLYrMRwfMxx9/TOfOnWttU/MxzSIiTSnp\nAePuZ7v7nu6e6+7d3f1Rd1/r7ie4e293P9HdS6LWv8zde7r7Qe4+M5l13xHxAqR3796R6fCpr+iW\nTOvWrRkwYAAlJZHDENM77Ztvvqm1zzlz5tCrV69GqbOIyI5IesCkmwsvvDBmSBiAcePGcdFFFwHx\nL96XlZVRUFAQU3bLLbfwwAOh24DidRCIvq4jIpIMCpgmlpeXV6tHW0ZGBg8//DBQO2D+93//lyuv\nvJL8/PyY8s2bN3P//fcDW2/AXL9+vbovi0izoYBpBrKytnbma9u2LQB77bUXAH/+858ZN24crVu3\nrrVdu3btKCsrY/369QDk5+eTlZXFpEmTIqfa1NtMRJKluXZTThvvvPMORx11FADLli2joKAAd+eJ\nJ56IWa9Vq1a1ts3KymLIkCG89dZbMeUzZ85kzz33BKCioqLOjgMiIomkFkySHX300ZHeZNHXWaJb\nNRA/YBYvXhz3Jql169ZFBtn87//+bw4++OBa62RkZPDcc8/tTNVFROqlgGmm+vXrF9OluWbADBgw\ngKKiIiorK2ttu2rVqkjwvPLKK8yaNavWOu4et1xEpLEoYJqpvn37xlywj74Gc8MNN/D666/Xue3X\nX3/N6NGjgdApsrCSkpKYRzDXbCWJiDQmBcwuIro1k5OTU6tXWbTobsvRARO+2z984b/miM4iIo1J\nAbOL2GeffSLdm7d10T7cqwy23pD5wgsv8Mc//hHYGkAKGBFJJAXMLqJTp06RGzTDY5iFB9CsKXoI\nmnAL5sorr+TJJ58EoHv37kDtgJk4cSIXXnhh41ZcRNKWAmYXFA6Y8FAwf//732OWx7v3Jd7d/jXX\nu++++3jssccAPW9GRHaeAmYX1KZNG2DrRfqRI0fGLI++7lKfmsPJhLdbsGCBOgCIyE5TwOxiPvvs\nM4YPHw6EujJ/8cUXMT3DwvLz8/n1r39d776efvppiouLmTNnDkCky/M+++wDNDyoRETisVQcSsTM\nPBU/V31GjhzJI488grszfvx4zIzS0lJuuOGGercbPHgw//73vykuLqZTp04xy9auXUu7du0SWW0R\naUbMDHeP9+TgHaIWTIp46KGHGDx4MB06dOCqq67iyiuvpGPHjtvcLnyz5YsvvlhrWWlpKQC33nor\nn376aeNWWERSngImhTz//PMsWLAgMh8eODPcCaBFixb06dMnZpsVK1YAcNNNN9XaXzhgRo0axe23\n356QOotI6lLApJC8vLyYO/7DN2MeeuihAOyxxx785je/iSz/05/+FOlJVvORy61atWLixImR6zMb\nN26s9X4ffvghv/vd7xr3Q4hIylDApLDw+GX7778/V199Nbvtthvdu3ePBM6AAQPq3LZDhw6MGTOG\nvn37AltbM9XV1ZGBNB955BHuvPPOuNtXVFSwbNmyRvssIrLrUcCksPAd/3l5eYwbN45BgwbRq1cv\nnnjiCd56661Iayd8Km3y5MmRbWv2TNu4cSMvvvgimZmZ5OXlkZmZGVl/4cKFPP/88zHrjx07li5d\nuiTss4lI86ebHVJY+H6ZsPHjx0em99tvv8jpr549ezJz5kw6dOgQWV7zPpg1a9ZEnqAJoZbMjz/+\nCMDAgQNZunQpW7ZsITs7mxtvvJEJEyY0+ucRkV2LWjAprE+fPhQVFdW5PNyCOfDAAwFiAma33XYD\n4Oqrrwbghx9+YMqUKXH3s3TpUmBri+m2225j0aJFO1l7EdnVKWBSXM+ePetcFj41NmLECGBrp4C/\n/OUvDBs2jL59+3L55ZfH3fakk06KO12ft956i/79+zdoXRHZ9Slg0lh+fj7FxcUMHDiQsWPHRga/\nvOqqq7jmmmv45ptvIqfZjjnmmJhtjz766Mh09KCZX375Zcx6EyZMiPRUe+ONN/jiiy8S8llEpPlR\nwKS5jh07kp2dzbXXXkvr1q0588wzY0ZjDgfM8ccfHyl78803+dWvfhV3f1OnTo25wfP888/nkUce\n4amnnooMRVNcXMy//vUv9TITSXEaKkYaxN2prKwkJyeH0tJSysrKItdshgwZwvr161m6dCk///nP\n+cc//sH3339PQUEB3bt3j3QG6N+/P7NmzeKaa67hjjvuAODTTz/l0EMPxcxYvnw5nTt3TtpnFEl3\n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\nhPj/sKANSRBdT88AAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7fd7f229bb00>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Plot points and grid\n",
    "plt.contourf(xx, yy, grid_predictions, cmap=plt.cm.Paired, alpha=0.8)\n",
    "plt.plot(class1_x, class1_y, 'ro', label='Class 1')\n",
    "plt.plot(class2_x, class2_y, 'kx', label='Class -1')\n",
    "plt.title('Gaussian SVM Results')\n",
    "plt.xlabel('x')\n",
    "plt.ylabel('y')\n",
    "plt.legend(loc='lower right')\n",
    "plt.ylim([-1.5, 1.5])\n",
    "plt.xlim([-1.5, 1.5])\n",
    "plt.show()\n",
    "\n",
    "# Plot batch accuracy\n",
    "plt.plot(batch_accuracy, 'k-', label='Accuracy')\n",
    "plt.title('Batch Accuracy')\n",
    "plt.xlabel('Generation')\n",
    "plt.ylabel('Accuracy')\n",
    "plt.legend(loc='lower right')\n",
    "plt.show()\n",
    "\n",
    "# Plot loss over time\n",
    "plt.plot(loss_vec, 'k-')\n",
    "plt.title('Loss per Generation')\n",
    "plt.xlabel('Generation')\n",
    "plt.ylabel('Loss')\n",
    "plt.show()"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.5.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
